Multiple-in-multiple-out antenna network-coded amplify-and-forward relaying scheme for three node bidirectional cooperation

ABSTRACT

A method and apparatus are described including receiving a first signal including first data in a first time slot of a first channel ( 705 ), receiving a second signal including second data in a second time slot of a second channel ( 710 ), determining a first pre-coding matrix ( 715 ), determining a second pre-coding matrix ( 720 ), applying the first pre-coding matrix to the first data to produce pre-coded first data ( 725 ), applying the second pre-coding matrix to the second data to produce pre-coded second data ( 730 ), generating a third signal by combining the pre-coded first data and the pre-coded second data ( 735 ) and transmitting the third signal on the first channel and on the second channel ( 740 ). Also described are a method and apparatus including transmitting a first signal ( 605 ), receiving a second signal including a first training sequence ( 610 ) and decoding the second signal by removing the first training sequence and removing the first signal ( 615 ).

FIELD OF THE INVENTION

The present invention is directed to a three node cooperation scheme to assist in bidirectional transmissions (communications) of the draft IEEE 802.11n standard.

BACKGROUND OF THE INVENTION

In multicast and broadcast applications, data are transmitted from a server to multiple receivers over wired and/or wireless networks. A multicast system as used herein is a system in which a server transmits the same data to multiple receivers simultaneously, where the receivers form a subset of all the receivers up to and including all of the receivers. A broadcast system is a system in which a server transmits the same data to all of the receivers simultaneously. That is, a multicast system by definition can include a broadcast system.

Consider multicast (downlink) and multi-access (uplink) channels with one access point (AP) and several nodes. In the IEEE 802.11n draft standard, a reverse direction (RD) protocol is introduced for fast scheduling of bidirectional traffic flows within a transmission opportunity (TXOP). The reverse direction protocol permits (allows) the node, which has obtained the TXOP to grant reverse directional transmissions to another node while it is still in control of the TXOP. If the channel conditions between the nodes are inadequate (poor) then transmissions between the two nodes suffer. That suffering may be reduced data rate and/or throughput.

In the IEEE 802.11n draft standard, a reverse direction (RD) protocol has been proposed as in FIG. 1. The reverse direction protocol of the IEEE 802.11n draft standard only schedules bidirectional transmission between two nodes. Each node is both a source node and a destination node. There is no existing scheduling protocol for three-node bidirectional transmissions in IEEE 802.11 WLAN standards. FIG. 1 illustrates the conventional unidirectional cooperation using a half-duplex relay node (RN). FIG. 1 a shows the first stage of communication, in which Node₁ transmits (sends, communicate) data S₁ to both Node₂ and the RN. FIG. 1 b shows stage 2 of communication, in which the RN transmits (communicates, sends) data Ŝ₁ to Node₂. That is, the RN transmits (communicates, forwards, sends) data S₁ as Ŝ₁ to Node₂. Correspondingly (and not shown), in the third stage of communication, Node₂ transmits (sends, communicate) data S₂ to both Node₁ and the RN. In the fourth stage of communication, the RN transmits (communicates, forwards, sends) data Ŝ₂ to Node₁. That is, the RN transmits (communicates, forwards, sends) data S₂ as Ŝ₂ to Node₁. Thus, in the conventional approach, there are four stages (phases) to complete communications using the half-duplex RN to assist Node₁ and Node₂.

Network-coded three-node bidirectional cooperation with three stages (i.e., the reception of signals from nodes (source and destination) at the RN are orthogonal (separate)) has been studied, using Decode-and-Forward, Soft Decode-and-Forward, and Amplify-and-Forward in a single-antenna system, and a case when L₁=L₂=1 and L_(R)=2 etc, respectively. Note that L_(i), i=1, 2,R represents the number of antennas at Node₁, Node₂ and RN respectively. The present invention uses Amplify-and-Forward for the general MIMO case with an arbitrary number of antennas at the nodes. This has not been addressed in any publications known to the Applicants.

SUMMARY OF THE INVENTION

As used herein a node includes (but is not limited to) a station (STA), a mobile device, a mobile terminal, a dual mode smart phone, a computer, a laptop computer or any other equivalent device capable of operating under the IEEE 802.11n draft standard.

Consider multicast (downlink) and multi-access (uplink) channels with one access point (AP) and several nodes. In the IEEE 802.11n draft standard, a reverse direction (RD) protocol is introduced for fast scheduling of bidirectional traffic flows within a transmission opportunity (TXOP). The reverse direction protocol permits (allows) the node, which has obtained the TXOP to grant reverse directional transmissions to another node while it is still in control of the TXOP. However, when the channel state (channel conditions) between the two nodes is not sufficient for providing fast and reliable transmissions (communication) between them, cooperation through a third node, a half-duplex relay node (RN), may be involved to assist transmissions (communications). When the transmission between these two nodes involves cooperation through a third node, a half-duplex relay node (RN), the situation becomes more complicated, and wireless network coding can be utilized to further increase system throughput. Each node is both a source node and a destination node.

In the present invention, as shown in FIG. 2 and described more fully below, wireless network coding is introduced into the system and combined with bidirectional cooperation to increase system throughput. The present invention describes a network-coded amplify-and-forward (NCAF) relaying scheme in such a three-node bidirectional cooperation scenario.

In three-node bidirectional cooperation scheme of the present invention, two nodes, Node₁ and Node₂, are both source and destination nodes, and the RN is a relay node, assisting the bidirectional transmission between Node₁ and Node₂. The relay node (RN) sequentially receives signals from both Node₁ and Node₂, combines the two signals with pre-coding matrices for both of them, and broadcasts the mixed signal to both nodes on orthogonal channels. Each of the nodes (source and destination) receives both the transmission (communication) of the desired signal from the other node, and the transmission (communication) of the mixed signal from the RN. Each node can jointly decode the data it desires based on the knowledge of the signal it sent out (transmitted, communicated). The process is shown in FIG. 3, which will be further described below. The present invention not only describes the above network-coded amplify-and-forward (NCAF) relaying scheme, but also solves the design problem of the pre-coding matrices at RN for the received signals from the nodes (source and destination), so as to maximize the instantaneous capacity of the bidirectional cooperation system, subject to a total power constraint at the RN, given channel state information (CSI) in two cases:

(1) Without CSI of direct links at the RN: Only CSI of the channels from the nodes (source and destination) to the RN, and the channels from the RN to the nodes (source and destination), are known at the RN. CSI of the channels between the two nodes (source and destination) is not known at the RN.

(2) With CSI of the direct links at the RN: CSI of the channels from the nodes (source and destination) to the RN, and the channels from RN to the nodes (source and destination), and the channels between the two nodes (source and destination) are known at the RN.

In the Network-Coded Amplify-and-Forward (NCAF) relaying scheme of the present invention, the RN no longer forwards the amplified received signals from one node to another as in conventional amplify-and-forward cooperation. Instead, the RN combines two received signals from two nodes by firstly multiplying them with pre-coding matrices. Then the RN broadcasts (multicasts) the combined signal, which contains the mixed data of the bidirectional traffic flow. Each end node receives the signal from the RN. The nodes can then jointly decode its desired signal based on the knowledge of the signal it has sent out (transmitted, communicated). There is still diversity in the cooperation.

The NCAF relaying scheme of the present invention, may prove to be essential to the future the IEEE 802.11 draft Very High Throughput (VHT) standard. The advantage of the NCAF relaying scheme of the present invention is that only simple processing, i.e., linear pre-coding, is needed at the relay node (RN). It is also compatible with conventional cooperation using an amplify-and-forward relaying scheme. The NCAF relaying scheme of the present invention also solves the problem when the RN is not able to decode the received data due to an insufficient number of antennas equipped at the RN and is always feasible for any multiple-antenna systems.

A method and apparatus are described including receiving a first signal including first data in a first time slot of a first channel, receiving a second signal including second data in a second time slot of a second channel, determining a first pre-coding matrix, determining a second pre-coding matrix, applying the first pre-coding matrix to the first data to produce pre-coded first data, applying the second pre-coding matrix to the second data to produce second pre-coded data, generating a third signal by combining the pre-coded first data and the pre-coded second data and transmitting the third signal on the first channel and on the second channel. Also described are a method and apparatus including transmitting a first signal, receiving a second signal and jointly decoding the second signal including a first training sequence by removing the first training sequence and removing the first signal.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The drawings include the following figures briefly described below:

FIG. 1 shows the amplify-and-forward relaying scheme.

FIG. 2 shows the operation of the Network-Coded Amplify-and-Forward relaying scheme for bidirectional cooperation of the present invention using a half-duplex relay node.

FIG. 3 a is a block diagram of the operation of an exemplary embodiment of the transmission side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention.

FIG. 3 b is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node₁.

FIG. 3 c is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node₂.

FIG. 4 is collectively simplified exemplary frame structures for the Network-Coded Amplify-and-Forward relaying scheme without beamforming at source nodes of the present invention.

FIG. 5 is collectively simplified exemplary frame structures for the Network-Coded Amplify-and-Forward relaying scheme with beamforming at source nodes of the present invention.

FIG. 6 is a flowchart of an exemplary embodiment of the present invention from the perspective of a node (source and destination).

FIG. 7 is a flowchart of an exemplary embodiment of the present invention from the perspective of a relay node.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 2 shows the operation of the Network-Coded Amplify-and-Forward relaying scheme for bidirectional cooperation of the present invention using a half-duplex relay node. FIG. 2 a shows the first stage of communication, in which Node₁ transmits (sends, communicates) data S₁ to both Node₂ and the RN. In the second stage of communication as shown in FIG. 2 b, Node₂ transmits (sends, communicate) data S₂ to both Node₁ and the RN. In the third stage of communication as shown in FIG. 2 c, the RN combines (mixes) data Ŝ₁+Ŝ₂ for transmission (communication) to both Node₁ and Node₂. Data Ŝ₁+Ŝ₂ is formed by applying pre-coding matrices to data S₁ and data S₂. The combination of data Ŝ₁+Ŝ₂ is f(S₁+S₂). The number of stages has thus been reduced from four stages to three stages. It should be noted that in addition to applying pre-coding matrices to the data, beamforming matrices may also be applied to the data.

A system model and some notation is introduced first. X_(i) is the signal transmitted from Node, (i=1, 2, R, and Node_(R) denotes the RN). Q_(i) is the beamforming matrix at Node, and it is an identity matrix if beamforming is not used. H_(ij) is the channel matrix from Node_(j) to Node_(i). Y_(ij) and N_(ij) are the received signal and noise from Node_(j) to Node_(i), elements are assumed to be independent and identically distributed Gaussian with variance σ_(n) ². W_(i) is the pre-coding matrix applied to Y_(Ri) at RN. The total transmitted power is P_(i) at Node, (i=1, 2) and P_(R) at the RN.

The RN receives Y_(R1)=H_(R1)Q₁X₁+N_(R1) from Node₁ in the 1^(st) time slot, and Y_(R2)=H_(R2)Q₂X₂+N_(R2) from Node₂ in the 2^(nd) time slot. Then the RN mixes the weighed received signals as its broadcast signal

X _(R) =W ₁ Y _(R1) +W ₂ Y _(R2) =W ₁ H _(R1) Q ₁ X ₁ +W ₂ H _(R2) Q ₂ X ₂ +W ₁ N _(R1) +W ₂ N _(R2).

The reception and decoding at one node (source and destination) is used as an example. It goes without saying that demodulation is performed at the reception end. The processing at the other node (source and destination) is similar. Node₁ receives Y₁₂=H₁₂Q₂X₂+N₁₂ from Node₂ in the 2^(nd) time slot, and Y_(1R)=H_(1R)X_(R)+N_(1R) from the RN in the 3^(rd) time slot, i.e., Y_(1R)=H_(1R)W₁H_(R1)Q₁X₁+H_(1R)W₂H_(R2)Q₂X₂+H_(1R)W₁N_(R1)+H_(1R)W₂N_(R2)+N_(1R). The matrix form is

$\begin{matrix} {\begin{bmatrix} Y_{12} \\ Y_{1R} \end{bmatrix} = {{\begin{bmatrix} 0_{N_{1}} \\ {H_{1R}W_{1}H_{R\; 1}} \end{bmatrix}Q_{1}X_{1}} + {\begin{bmatrix} H_{12} \\ {H_{1R}W_{2}H_{R\; 2}} \end{bmatrix}Q_{2}X_{2}} + {\quad{{\begin{bmatrix} 1_{N_{1}} & 0_{N_{1} \times N_{R}} & 0_{N_{1} \times N_{R}} & 0_{N_{1}} \\ 0_{N_{1}} & {H_{1R}W_{1}} & {H_{1R}W_{2}} & I_{N_{1}} \end{bmatrix}\begin{bmatrix} N_{12} \\ N_{R\; 1} \\ N_{R\; 2} \\ N_{1R} \end{bmatrix}},}}}} & (1) \end{matrix}$

i.e., Y₁=D₁X₁+A₁X₂+B₁N₁, where Y₁=[Y₁₂ Y_(1R)]^(T) ∈ C^(2L) ¹ ^(×1), 0_(N) _(i) _(×N) _(i) ∈ C^(L) ^(i) ^(×L) ^(i) is a zero matrix, and I_(N) ∈ C^(N×N) is an identity matrix. Note that at Node₁, X₁ is known, but X₂ is unknown and to be detected. N₁=[N₁₂ N_(R1) N_(R2) N_(1R)]^(T) ∈ C^(2(L) ¹ ^(+L) ^(R) ^()×1) is the noise vector at Node₁, and the matrices,

$\begin{matrix} {{f = {{\log \mspace{11mu} {\det\left( {I_{2N_{1}} + {\frac{P_{2}}{N_{2}\sigma_{n}^{2}}\left( {A_{1}A_{1}^{H}} \right)\left( {B_{1}B_{1}^{H}} \right)^{- 1}}} \right)}} + {\log \mspace{11mu} {\det\left( {I_{2N_{2}} + {\frac{P_{1}}{N_{1}\sigma_{n}^{2}}\left( {A_{2}A_{2}^{H}} \right)\left( {B_{2}B_{2}^{H}} \right)^{- 1}}} \right)}}}},{{{{subject}\mspace{14mu} {to}\mspace{14mu} \frac{P_{1}}{N_{1}}{tr}\left\{ {W_{1}H_{R\; 1}Q_{1}Q_{1}^{H}H_{R\; 1}^{H}W_{1}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{1}W_{1}^{H}} \right\}} + {\frac{P_{2}}{N_{2}}{tr}\left\{ {W_{2}H_{R\; 2}Q_{2}Q_{2}^{H}H_{R\; 2}^{H}W_{2}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{2}W_{2}^{H}} \right\}}} = P_{R}},} & (1) \end{matrix}$

are assumed known. Based on the knowledge of X₁, Node₁ can obtain Z₁=Y₁−D₁X₁=A₁X₂+B₁N₁, where Z₁ is the equivalent received signal, and A₁ is the equivalent channel matrix for signal X₂. Then Node₁ can jointly decode X₂.

Similarly, Z₂=A₂X₁+B₂N₂, where Z₂, A₂, B₂ and N₂ are defined by exchanging the subscripts “1” and “2”, and “N₁” and “N₂” in their counterparts.

The problem is to determine W₁ and W₂, W_(i) ∈ C^(L) ^(R) ^(×L) ^(R) , i=1, 2, to maximize the instantaneous capacity of the system, subject to the transmit power constraint at the RN. W₁ and W₂ are the pre-coding matrices. That is, determine W₁ and W₂, to maximize

$\begin{matrix} {{{\frac{P_{1}}{N_{1}}{tr}\left\{ {W_{1}H_{R\; 1}H_{R\; 1}^{H}W_{1}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{1}W_{1}^{H}} \right\}} + {\frac{P_{2}}{N_{2}}{tr}\left\{ {W_{2}H_{R\; 2}H_{R\; 2}^{H}W_{2}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{2}W_{2}^{H}} \right\}}} = {P_{R}.}} & (2) \end{matrix}$

where tr(X): represents the trace of the matrix X. Letting i=1, 2 be a unitary matrix, the constraint can be simplified to

$\begin{matrix} {{{\frac{P_{1}}{N_{1}}{tr}\left\{ {W_{1}H_{R\; 1}H_{R\; 1}^{H}W_{1}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{1}W_{1}^{H}} \right\}} + {\frac{P_{2}}{N_{2}}{tr}\left\{ {W_{2}H_{R\; 2}H_{R\; 2}^{H}W_{2}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{2}W_{2}^{H}} \right\}}} = {P_{R}.}} & (2) \end{matrix}$

In the first case, the CSI of the channels (links) from Node, to the RN and the RN to Node_(j), are assumed available at the RN. The CSI of the links (channels) between Node_(i), and Node_(j), i, j=1, 2 and i≠j is not available. In this scenario, it is necessary to maximize an upper bound of f instead of f itself due to the lack of information in it. That is, determine W₁ and W₂, to maximize

$\begin{matrix} {f_{1} = {{{\log \mspace{11mu} {\det\begin{pmatrix} {I_{N_{1}} + {\frac{P_{2}}{N_{2}\sigma_{n}^{2}}H_{1R}W_{2}H_{R\; 2}H_{R\; 2}^{H}W_{2}^{H}H_{1R}^{H}}} \\ \left( {I_{N_{1}} + {H_{1R}W_{1}W_{1}^{H}H_{1R}^{H}} + {H_{1R}W_{2}W_{2}^{H}H_{1R}^{H}}} \right)^{- 1} \end{pmatrix}}} + {\log \mspace{11mu} {\det \begin{pmatrix} {I_{N_{2}} + {\frac{P_{1}}{N_{1}\sigma_{n}^{2}}H_{2R}W_{1}H_{R\; 1}H_{R\; 1}^{H}W_{1}^{H}H_{2R}^{H}}} \\ \left( {I_{N_{2}} + {H_{2R}W_{1}W_{1}^{H}H_{2R}^{H}} + {H_{2R}W_{2}W_{2}^{H}H_{2R}^{H}}} \right)^{- 1} \end{pmatrix}}\mspace{14mu} {subject}\mspace{14mu} {to}\mspace{14mu} \frac{P_{1}}{N_{1}}{tr}\left\{ {W_{1}H_{R\; 1}H_{R\; 1}^{H}W_{1}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{1}W_{1}^{H}} \right\}} + {\frac{P_{2}}{N_{2}}{tr}\left\{ {W_{2}H_{R\; 2}H_{R\; 2}^{H}W_{2}^{H}} \right\}} + {\sigma_{n}^{2}{tr}\left\{ {W_{2}W_{2}^{H}} \right\}}} = P_{R}}} & (3) \end{matrix}$

as shown in Equation (2).

In the second case, the CSI of channels from Node, to the RN, from the RN to Node_(j), and from Node_(i) to Node_(j), are assumed to be available to the RN, i, j=1, 2 and i≠j. In this scenario, the design problem is to maximize (1) subject to (2).

By the singular value decomposition (SVD) theorem, the channels (links) can be decomposed to H_(R1)=U_(R1)Λ_(R1) ^(1/2)V_(R1) ^(H), H_(R2)=U_(R2)Λ_(R2) ^(1/2)V_(R2) ^(H), H_(1R)=U_(1R)Λ_(1R) ^(1/2)V_(1R) ^(H) and H_(2R)=U_(2R)Λ_(2R) ^(1/2)V_(2R) ^(H), where U_(R1), U_(R2), V_(1R), V_(2R) ∈ C^(L) ^(R) ^(×L) ^(R) , V_(R1), U_(1R) ∈ C^(L) ¹ ^(×L) ¹ , and V_(R2), U_(2R) ∈ C^(L) ² ^(×L) ² are unitary matrices; Λ_(ij) ^(1/2) ∈ C^(L) ¹ ^(×L) ^(j) , i, j=1, 2, R, are the singular value matrices. In particular, Λ_(ij)=Λ_(ij) ^(1/2)(Λ_(ij) ^(1/2))^(H)=diag{λ_(ij, k)}∈ C^(L) ^(i) ^(×L) is, i, j=1, 2, R, where ()^(T) and ()^(H) represent the matrix transpose and conjugate transpose operations, respectively. Also define T=V_(1R) ^(II)V_(2R) ∈ C^(L) ^(R) ^(×L) ^(R) and denote T=(t_(ij)), i, j=1, . . . , L_(R).

When the CSI of direct links between Node₁ and Node₂ is not available, let W₁=V_(2R){tilde over (W)}₁U_(R1) ^(H) and W₂=V_(1R){tilde over (W)}₂U_(R2) ^(H), where {tilde over (W)}₁, {tilde over (W)}₂ ∈ C^(L) ^(R) ^(×L) ^(R) are to be determined. There is no closed form solution. But {tilde over (W)}₁ and {tilde over (W)}₂ can be solved iteratively using Newton's method.

Furthermore, the problem statement can be rewritten in the following form, where the notation will be explained after the approach is introduced.

Determine λ, to minimize f₂(λ)   (4)

subject to λ≧0,   (5)

Sλ=q   (6)

The Lagrangian function is L(λ, μ)=f ₂(λ)−μ^(T)(Sλ−q),   (7)

where μ is the vector containing the Lagrangian multipliers. Using Newton's method, the following iterative approach is used to solve for λ:

Step 1: Initiate λ⁰ ∈(0, max_λ).

Step 2: In each iteration, solve

$\begin{matrix} {{\begin{bmatrix} {\nabla^{2}{f_{2}\left( \lambda^{k} \right)}} & {- S^{T}} \\ {- S} & 0 \end{bmatrix}v^{k}} = {{\begin{bmatrix} {{S^{T}\mu^{k}} - \; {\nabla\; {f_{2}\left( \lambda^{k} \right)}}} \\ {{S\; \lambda^{k}} - q} \end{bmatrix}\mspace{14mu} {for}\mspace{14mu} v^{k}} = {\begin{pmatrix} v_{\lambda}^{k} \\ v_{\mu}^{k} \end{pmatrix}.}}} & (8) \end{matrix}$

Step 3: Take as next iteration

$\begin{matrix} {\begin{pmatrix} \lambda^{k + 1} \\ \mu^{k + 1} \end{pmatrix} = {\begin{pmatrix} \lambda^{k} \\ \mu^{k} \end{pmatrix} + {\begin{pmatrix} v_{\lambda}^{k} \\ v_{\mu}^{k} \end{pmatrix}.}}} & (9) \end{matrix}$

Step 4: If sum(sign(λ^(k+1)))≠length(λ^(k+1)) or sum(sign(max_λ−λ^(k+1)))≠length(λ^(k+1)), go back to Step 1. Otherwise, go to Step 5.

Step 5: If ∥ν_(λ) ^(k)∥²<Threshold, stop. Otherwise, k=k +1, and go to Step 2.

In Step 4, given x=(x₁, . . . , x_(M))^(T) is a column vector or length M, length(x)=M and

${{sum}(x)} = {{\sum\limits_{i = 1}^{{length}{(x)}}\; {{x_{i} \cdot {sign}}(x)}} = \left\{ {\begin{matrix} {1,{{{if}\mspace{14mu} x} > 0}} \\ {0,{{{if}\mspace{14mu} x} = 0}} \\ {{- 1},{{{if}\mspace{14mu} x} < 0}} \end{matrix},} \right.}$

and sign(x)=(sign(x₁), . . . , sign(x_(M)))^(T).

Condition α_(i) is defined as “when L_(i)≧L_(R), or when both L_(i)<L_(R) and L_(i)(L_(i)−1)≧L_(R) are satisfied”, and condition β_(i) is defined as “when both L_(i)<L_(R) and L_(i)(L_(i)−1)≦L_(R)−1 are satisfied”. Therefore, there are three cases of solution as follows:

General Case I: When α₁ and α₂ exist, both {tilde over (W)}₁ and {tilde over (W)}₂ are identity matrices multiplied by constants, respectively, i.e., {tilde over (W)}₁=λ₁I_(L) _(R) , {tilde over (W)}₂=λ₂I_(L) _(R) , λ₁, λ₂≧0. The notation in the iterative approach is as follows:

${\lambda = \left( {\lambda_{1},\lambda_{2}} \right)^{T}},{{max\_\lambda} = \left( {\frac{P_{R}}{d_{a}\sigma_{n}^{2}},\frac{P_{R}}{d_{b}\sigma_{n}^{2}}} \right)^{T}},{\mu = {{\mu \mspace{14mu} {and}\mspace{14mu} v^{k}} = {{\left( {v_{\lambda_{1}}^{k},v_{\lambda_{2}}^{k},v_{\mu}^{k}} \right)^{T}.S} = \left( {d_{a},d_{b}} \right)}}},{q = \frac{P_{R}}{\sigma_{n}^{2}}},{{{where}\mspace{14mu} c_{a,i}} = {{\frac{P_{1}}{L_{1}\sigma_{n}^{2}}\lambda_{{R\; 1},i}} + 1}},{c_{b,i} = {{\frac{P_{2}}{L_{2}\sigma_{n}^{2}}\lambda_{{R\; 2},i}} + 1}},{i = 1},\ldots \mspace{11mu},M,{d_{a} = {\sum\limits_{i = 1}^{M}\; c_{a,i}}},{d_{b} = {\sum\limits_{i = 1}^{M}\; c_{b,i}}},$

and M=min(L₁, L₂, L_(R)). The Hessian and gradient of f₂(λ) are expressed as following:

${{\nabla^{2}{f_{2}\left( \lambda^{k} \right)}} = {{\begin{pmatrix} \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda^{2}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1}}{\partial\lambda_{2}}} \\ \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1}}{\partial\lambda_{2}}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2}^{2}} \end{pmatrix}\mspace{14mu} {and}\mspace{14mu} {\nabla{f_{2}\left( \lambda^{k} \right)}}} = \begin{pmatrix} \frac{\partial{f_{2}\left( \lambda^{2} \right)}}{\partial\lambda_{1}} \\ \frac{\partial{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2}} \end{pmatrix}}},{{{where}\mspace{14mu} \frac{\partial{f_{2}(\lambda)}}{\partial\lambda_{1}}} = {\sum\limits_{i = 1}^{M}\; \left( {{- m_{1,i}} + m_{2,i} - {c_{a,i}m_{3,i}} + m_{4,i}} \right)}},{\frac{\partial{f_{2}(\lambda)}}{\partial\lambda_{2}} = {\sum\limits_{i = 1}^{M}\; \left( {{{- c_{b,i}}m_{1,i}} + m_{2,i} - m_{3,i} + m_{4,i}} \right)}},{\frac{\partial^{2}{f_{2}(\lambda)}}{\partial\lambda_{1}^{2}} = {\sum\limits_{i = 1}^{M}\; \left( {m_{1,i}^{2} - m_{2,i}^{2} + {c_{a,i}^{2}m_{3,i}^{2}} - m_{4,i}^{2}} \right)}},{\frac{\partial^{2}{f_{2}(\lambda)}}{{\partial\lambda_{1}}{\partial\lambda_{2}}} = {\sum\limits_{i = 1}^{M}\left( {{c_{b,i}m_{1,i}^{2}} - m_{2,i}^{2} + {c_{a,i}m_{3,i}^{2}} - m_{4,i}^{2}} \right)}},{\frac{\partial^{2}{f_{2}(\lambda)}}{\partial\lambda_{2}^{2}} = {\sum\limits_{i = 1}^{M}\; \left( {{c_{b,i}^{2}m_{1,i}^{2}} - m_{2,i}^{2} + m_{3,i}^{2} - m_{4,i}^{2}} \right)}},{{{and}\mspace{14mu} m_{1,i}} = \; \frac{\lambda_{{1R},i}}{1 + {\lambda_{1}\lambda_{{1R},i}} + {\lambda_{2}c_{b,i}\lambda_{{1R},i}}}},{m_{2,i} = \; \frac{\lambda_{{1R},i}}{1 + {\lambda_{1}\lambda_{{1R},i}} + {\lambda_{2}\lambda_{{1R},i}}}},{m_{3,i} = \; \frac{\lambda_{{2R},i}}{1 + {\lambda_{1}c_{a,i}\lambda_{{2R},i}} + {\lambda_{2}\lambda_{{2R},i}}}},{m_{4,i} = \; {\frac{\lambda_{{2R},i}}{1 + {\lambda_{1}\lambda_{{2R},i}} + {\lambda_{2}\lambda_{{2R},i}}}.}}$

General Case 2: When α₁ and β₂ exist, {tilde over (W)}₁ is an identity matrix multiplied by a constant, i.e., {tilde over (W)}₁=λ₁I_(L) _(R) , λ₁≧0; while {tilde over (W)}₂=Λ₂ ^(1/2)=diag{λ_(2, 1) ^(1/2), . . . , λ_(2, L) _(R) ^(1/2)}. λ_(2, i)≧0, i=1, . . . , L_(R), is a diagonal matrix. The notation in the iterative approach is as follows:

${\lambda = \left( {\lambda_{1},\lambda_{2,1},\ldots \mspace{11mu},\lambda_{2,L_{R}}} \right)^{T}},{{max\_\lambda} = \left( {\frac{P_{R}}{d_{a}\sigma_{n}^{2}},\frac{P_{R}}{c_{b,1}\sigma_{n}^{2}},L,\frac{P_{R}}{c_{b,M}\sigma_{n}^{2}},1_{L_{R} - M}^{T}} \right)^{T}},{\mu = \left( {\mu_{1},L,\mu_{{L_{2}{({L_{2} - 1})}} + 1}} \right)^{T}},{v^{k} = \left( {v_{\lambda_{1}}^{k},v_{\lambda_{2,1}}^{k},L,v_{\lambda_{2,L_{R}}}^{k},v_{\mu_{1}}^{k},L,v_{\mu_{{L_{2}{({L_{2} - 1})}} + 1}}^{k}} \right)^{T}},{1_{N} = {{\left( \underset{\underset{N}{}}{1,\ldots \mspace{11mu},1} \right).\mspace{11mu} S} = \begin{bmatrix} 0_{{L_{2}{({L_{2} - 1})}} \times 1} & S_{2} \\ d_{a} & {c_{b,1},L,c_{b,M},0_{1 \times {({L_{R} - M})}}} \end{bmatrix}}},{q = \begin{pmatrix} 0_{{L_{2}{({L_{2} - 1})}} \times 1} \\ \frac{P_{R}}{\sigma_{n}^{2}} \end{pmatrix}},{{{where}\mspace{14mu} c_{a,i}} = {{\frac{P_{1}}{L_{1}\sigma_{n}^{2}}\lambda_{{R\; 1},i}} + 1}},{c_{b,i} = {{\frac{P_{2}}{L_{2}\sigma_{n}^{2}}\lambda_{{R\; 2},i}} + 1}},{i = 1},L,M,{d_{a} = {\sum\limits_{i = 1}^{M}\; c_{a,i}}},{{{and}\mspace{14mu} M} = {{\min \left( {L_{1},L_{2},L_{R}} \right)}.}}$

And

${S_{2} = {\begin{bmatrix} {{Re}\left\{ s_{2} \right\}} \\ {{Im}\left\{ s_{2} \right\}} \end{bmatrix} \in R^{{L_{2}{({L_{2} - 1})}} \times L_{R}}}},$

where Re{•} and Im{•} are the functions which take the real and imaginary parts of the variables, and s₂ comes from the linear equations

$\begin{matrix} {{{\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{2,k}t_{ki}^{*}t_{kj}}} = 0},{1 \leq i < j \leq L_{2}},{i.e.},{s_{2} = {{\begin{pmatrix} {t_{11}^{*}t_{12}} & {t_{21}^{*}t_{22}} & L & {t_{L_{R},1}^{*}t_{L_{R},2}} \\ {t_{11}^{*}t_{13}} & {t_{21}^{*}t_{23}} & L & {t_{L_{R},1}^{*}t_{L_{R},3}} \\ M & M & O & M \\ {t_{11}^{*}t_{1,L_{2}}} & {t_{21}^{*}t_{2,L_{2}}} & L & {t_{L_{R},1}^{*}t_{L_{R},L_{2}}} \\ {t_{12}^{*}t_{13}} & {t_{22}^{*}t_{23}} & L & {t_{L_{R},2}^{*}t_{L_{R},3}} \\ M & M & O & M \\ {t_{12}^{*}t_{1,L_{2}}} & {t_{22}^{*}t_{2,L_{2}}} & L & {t_{L_{R},2}^{*}t_{L_{R},L_{2}}} \\ M & M & O & M \\ {t_{1,{L_{2} - 1}}^{*}t_{1,L_{2}}} & {t_{2,{L_{2} - 1}}^{*}t_{2,L_{2}}} & L & {t_{L_{R},{L_{2} - 1}}^{*}t_{L_{R},L_{2}}} \end{pmatrix} \in {C^{\frac{L_{2}{({L_{2} - 1})}}{2} \times L_{R}}.\mspace{14mu} {\nabla^{2}{f_{2}\left( \lambda^{k} \right)}}}} = {\begin{pmatrix} \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{1}^{2}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1}}{\partial\lambda_{2,1}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1}}{\partial\lambda_{2,L_{R}}}} \\ \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1}}{\partial\lambda_{2,1}}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2,1}^{2}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{2,1}}{\partial\lambda_{2,L_{R}}}} \\ M & M & O & M \\ \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1}}{\partial\lambda_{2,L_{R}}}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{2,1}}{\partial\lambda_{2,L_{R}}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2,L_{R}}^{2}} \end{pmatrix}\mspace{14mu} {and}}}},{{{where}\mspace{14mu} \frac{\partial{f_{2}(\lambda)}}{\partial\lambda_{1}}} = {\sum\limits_{i = 1}^{M}\; \left( {{- m_{1,i}} + m_{2,i} - {c_{a,i}m_{3,i}} + m_{4,i}} \right)}},{\frac{\partial{f_{2}(\lambda)}}{\partial\lambda_{2,j}} = \left\{ {\begin{matrix} {{{{- c_{b,j}}m_{1,j}} + m_{2,j} + {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}\left( {{- m_{3,i}} + m_{4,i}} \right)}}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}\left( {{- m_{3,i}} + m_{4,i}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial^{2}{f_{2}(\lambda)}}{\partial\lambda_{1}^{2}} = {\sum\limits_{i = 1}^{M}\; \left( {m_{1,i}^{2} - m_{2,i}^{2} + {c_{a,i}^{2}m_{3,i}^{2}} - m_{4,i}^{2}} \right)}},{\frac{\partial^{2}{f_{2}(\lambda)}}{{\partial\lambda_{1}}{\partial\lambda_{2,j}}} = \left\{ {\begin{matrix} {{{c_{b,j}m_{1,j}^{2}} - m_{2,j}^{2} + {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}\left( {{c_{a,i}m_{3,i}^{2}} - m_{4,i}^{2}} \right)}}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}\left( {{c_{a,i}m_{3,i}^{2}} - m_{4,i}^{2}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial^{2}{f_{2}(\lambda)}}{\partial\lambda_{2,1}^{2}} = \left\{ {\begin{matrix} {{{c_{b,j}^{2}m_{1,j}^{2}} - m_{2,j}^{2} + {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{4}\left( {m_{3,i}^{2} - m_{4,i}^{2}} \right)}}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{4}\left( {m_{3,i}^{2} - m_{4,i}^{2}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial^{2}{f_{2}(\lambda)}}{{\partial\lambda_{2,j}}{\partial\lambda_{2,l}}} = {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}{t_{li}}^{2}\left( {m_{3,i}^{2} - m_{4,i}^{2}} \right)}}},{1 \leq j},{l \leq L_{R}},{j \neq l},{m_{1,i} = \frac{\lambda_{{1R},i}}{1 + {\lambda_{1}\lambda_{{1R},i}} + {\lambda_{2}c_{b,i}\lambda_{{1R},i}}}},{m_{2,i} = \frac{\lambda_{{1R},i}}{1 + {\lambda_{1}\lambda_{{1R},i}} + {\lambda_{2}\lambda_{{1R},i}}}},{m_{3,i} = \frac{\lambda_{{2R},i}}{1 + {\lambda_{1}c_{a,i}\lambda_{{2R},i}} + {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{2,k}{t_{ki}}^{2}\lambda_{{2R},i}}}}},{m_{4,i} = {\frac{\lambda_{{2R},i}}{1 + {\lambda_{1}\lambda_{{2R},i}} + {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{2,k}{t_{ki}}^{2}\lambda_{{2R},i}}}}.}}} \right.}} \right.}} \right.}} & \; \end{matrix}$

General Case 3: When β₁ and β₂ exist, both W₁ ^(%)=Λ₁ ^(1/2)=diag{λ_(1, 1) ^(1/2)}. λ_(1, i)≧0, i=1, L, L_(R), and W₂ ^(%)=Λ₂ ^(1/2)=diag{λ_(2, 1) ^(1/2), L, λ_(2, L) _(R) ^(1/2)}, λ_(2, i)≧0, i=1, L, L_(R), are diagonal matrices. The notation in the iterative approach is as follows:

${\lambda = \left( {\lambda_{1,1},{L\mspace{11mu} \lambda_{1,N_{R}}},\lambda_{2,1},{L\mspace{11mu} \lambda_{2,L_{R}}}} \right)^{T}},{\mu = \left( {\mu_{1},L,\mu_{{L_{2}{({L_{2} - 1})}} + 1}} \right)^{T}},{{max\_\lambda} = \left( {\frac{P_{R}}{c_{a,1}\sigma_{n}^{2}},L,\frac{P_{R}}{c_{a,M}\sigma_{n}^{2}},1_{L_{R} - M}^{T},\frac{P_{R}}{c_{b,1}\sigma_{n}^{2}},L,\frac{P_{R}}{c_{b,M}\sigma_{n}^{2}},1_{L_{R} - M}^{T}} \right)^{T}},{1_{N} = \left( {1,\underset{N}{\ldots}\mspace{11mu},1} \right)},{{{and}\mspace{14mu} v^{k}} = {{\left( {v_{\lambda_{1,1}}^{k},L,v_{\lambda_{1,L_{R}}}^{k},v_{\lambda_{2,1}}^{k},L,v_{\lambda_{2,L_{R}}}^{k},v_{\mu_{1}}^{k},L,v_{\mu_{{L_{2}{({L_{2} - 1})}} + 1}}^{k}} \right)^{T}.\mspace{14mu} S} = {\quad{\begin{bmatrix} S_{1} & 0_{{L_{1}{({L_{1} - 1})}} \times 1} \\ 0_{{L_{2}{({L_{2} - 1})}} \times 1} & S_{2} \\ {c_{a,1},L,c_{a,M},0_{1 \times {({L_{R} - M})}}} & {c_{b,1},L,c_{b,M},0_{1 \times {({L_{R} - M})}}} \end{bmatrix},{q = \begin{pmatrix} 0_{{\lbrack{{L_{1}{({L_{1} - 1})}} + {L_{2}{({L_{2} - 1})}}}\rbrack} \times 1} \\ \frac{P_{R}}{\sigma_{n}^{2}} \end{pmatrix}},{{{where}\mspace{14mu} c_{a,i}} = {{\frac{P_{1}}{L_{1}\sigma_{n}^{2}}\lambda_{{R\; 1},i}} + 1}},{c_{b,i} = {{\frac{P_{2}}{L_{2}\sigma_{n}^{2}}\lambda_{{R\; 2},i}} + 1}},{i = 1},L,M,{{{and}\mspace{14mu} M} = {{\min \left( {L_{1},L_{2},L_{R}} \right)}.}}}}}}$

And

${S_{1} = {{\begin{bmatrix} {{Re}\left\{ s_{1} \right\}} \\ {{Im}\left\{ s_{1} \right\}} \end{bmatrix} \in {R^{{L_{1}{({L_{1} - 1})}} \times L_{R}}\mspace{14mu} {and}\mspace{14mu} S_{2}}} = {\begin{bmatrix} {{Re}\left\{ s_{2} \right\}} \\ {{Im}\left\{ s_{2} \right\}} \end{bmatrix} \in R^{{L_{2}{({L_{2} - 1})}} \times L_{R}}}}},$

where Re{•} and Im{•} are the functions which take the real and imaginary part of the variables, s₁ and s₂ come from the linear equations

${{\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{1,k}t_{ik}t_{jk}^{*}}} = 0},{1 \leq i < j \leq L_{1}},{{{and}\mspace{14mu} {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{2,k}t_{ki}^{*}t_{kj}}}} = 0},{1 \leq i < j \leq L_{2}},$

respectively, i.e.,

$\begin{matrix} {{s_{1} = {\begin{pmatrix} {t_{11}t_{21}^{*}} & {t_{12}t_{22}^{*}} & L & {t_{1,L_{R}}t_{2,L_{R}}^{*}} \\ {t_{11}t_{31}^{*}} & {t_{12}t_{32}^{*}} & L & {t_{1,L_{R}}t_{3,L_{R}}^{*}} \\ M & M & O & M \\ {t_{11}t_{L_{1},1}^{*}} & {t_{12}t_{L_{1},2}^{*}} & L & {t_{1,L_{R}}t_{L_{1},L_{R}}^{*}} \\ {t_{21}t_{31}^{*}} & {t_{22}t_{32}^{*}} & L & {t_{2,L_{R}}t_{3,L_{R}}^{*}} \\ M & M & O & M \\ {t_{21}t_{L_{1},1}^{*}} & {t_{22}t_{L_{1},2}^{*}} & L & {t_{2,L_{R}}t_{L_{1},L_{R}}^{*}} \\ M & M & O & M \\ {t_{{L_{1} - 1},1}t_{L_{1},1}^{*}} & {t_{{L_{1} - 1},2}t_{L_{1},2}^{*}} & L & {t_{{L_{1} - 1},L_{R}}t_{L_{1},L_{R}}^{*}} \end{pmatrix} \in C^{\frac{L_{1}{({L_{1} - 1})}}{2} \times L_{R}}}},{{{and}\mspace{14mu} s_{2}} = {{\begin{pmatrix} {t_{11}^{*}t_{12}} & {t_{21}^{*}t_{22}} & L & {t_{L_{R},1}^{*}t_{L_{R},2}} \\ {t_{11}^{*}t_{13}} & {t_{21}^{*}t_{23}} & L & {t_{L_{R},1}^{*}t_{L_{R},3}} \\ M & M & O & M \\ {t_{11}^{*}t_{1,L_{2}}} & {t_{21}^{*}t_{2,L_{2}}} & L & {t_{L_{R},1}^{*}t_{L_{R},L_{2}}} \\ {t_{12}^{*}t_{13}} & {t_{22}^{*}t_{23}} & L & {t_{L_{R},2}^{*}t_{L_{R},3}} \\ M & M & O & M \\ {t_{12}^{*}t_{1,L_{2}}} & {t_{22}^{*}t_{2,L_{2}}} & L & {t_{L_{R},2}^{*}t_{L_{R},N_{2}}} \\ M & M & O & M \\ {t_{1,{L_{2} - 1}}^{*}t_{1,L_{2}}} & {t_{2,{L_{2} - 1}}^{*}t_{2,L_{2}}} & L & {t_{L_{R},{L_{2} - 1}}^{*}t_{L_{R},L_{2}}} \end{pmatrix} \in {C^{\frac{L_{2}{({L_{2} - 1})}}{2} \times L_{R}}.\mspace{14mu} {\nabla^{2}{f_{2}\left( \lambda^{k} \right)}}}} = \begin{pmatrix} \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{1,1}^{2}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,1}}{\partial\lambda_{1,L_{R}}}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,1}}{\partial\lambda_{2,1}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,1}}{\partial\lambda_{2,L_{R}}}} \\ M & O & M & M & O & M \\ \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,1}}{\partial\lambda_{1,L_{R}}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{1,L_{R}}^{2}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{2,1}}{\partial\lambda_{1,L_{R}}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,L_{R}}}{\partial\lambda_{2,L_{R}}}} \\ \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,1}}{\partial\lambda_{2,1}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{2,1}}{\partial\lambda_{1,L_{R}}}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2,1}^{2}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{2,1}}{\partial\lambda_{2,L_{R}}}} \\ M & O & M & M & O & M \\ \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,1}}{\partial\lambda_{2,L_{R}}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{1,L_{R}}}{\partial\lambda_{2,L_{R}}}} & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{{\partial\lambda_{2,1}}{\partial\lambda_{2,L_{R}}}} & L & \frac{\partial^{2}{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2,L_{R}}^{2}} \end{pmatrix}}},{{{and}\mspace{14mu} {\nabla{f_{2}\left( \lambda^{k} \right)}}} = \left( {{\begin{matrix} \frac{\partial{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{1,1}} & L & \frac{\partial{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{1,L_{R}}} & \frac{\partial{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2,1}} & L & {\left. \frac{\partial{f_{2}\left( \lambda^{k} \right)}}{\partial\lambda_{2,L_{R}}} \right)^{T},} \end{matrix}\frac{\partial{f_{2}(\lambda)}}{\partial\lambda_{1,j}}} = \left\{ {\begin{matrix} {{{\sum\limits_{i = 1}^{M}\; {{t_{ij}}^{2}\left( {{- m_{1,i}} + m_{2,i}} \right)}} - {c_{a,j}m_{3,j}} + m_{4,j}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ij}}^{2}\left( {{- m_{1,i}} + m_{2,i}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial{f_{2}(\lambda)}}{\partial\lambda_{2,j}} = \left\{ {\begin{matrix} {{{{- c_{b,j}}m_{1,j}} + m_{2,j} + {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}\left( {{- m_{3,i}} + m_{4,i}} \right)}}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}\left( {{- m_{3,i}} + m_{4,i}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial^{2}{f_{2}(\lambda)}}{\partial\lambda_{1,j}^{2}} = \left\{ {\begin{matrix} {{{\sum\limits_{i = 1}^{M}\; {{t_{ij}}^{2}\left( {m_{1,i}^{2} - m_{2,j}^{2}} \right)}} + {c_{a,j}^{2}m_{3,j}^{2}} - m_{4,j}^{2}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ij}}^{2}\left( {m_{1,i}^{2} - m_{2,i}^{2}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial^{2}{f_{2}(\lambda)}}{{\partial\lambda_{1,j}}{\partial\lambda_{1,l}}} = {\sum\limits_{i = 1}^{M}\; {{t_{ij}}^{2}{t_{il}}^{2}\left( {m_{1,i}^{2} - m_{2,i}^{2}} \right)}}},{1 \leq j},{l \leq L_{R}},{j \neq l},{\frac{\partial^{2}{f_{2}(\lambda)}}{\partial\lambda_{2,j}^{2}} = \left\{ {\begin{matrix} {{{c_{b,j}^{2}m_{1,j}^{2}} - m_{2,j}^{2} + {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{4}\left( {m_{3,i}^{2} - m_{4,i}^{2}} \right)}}},{1 \leq j \leq M}} \\ {{\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{4}\left( {m_{3,i}^{2} - m_{4,i}^{2}} \right)}},{{M + 1} \leq j \leq L_{R}}} \end{matrix},{\frac{\partial^{2}{f_{2}(\lambda)}}{{\partial\lambda_{2,j}}{\partial\lambda_{2,l}}} = {\sum\limits_{i = 1}^{M}\; {{t_{ji}}^{2}{t_{li}}^{2}\left( {m_{3,i}^{2} - m_{4,i}^{2}} \right)}}},{1 \leq j},{l \leq L_{R}},{\frac{\partial^{2}{f_{2}(\lambda)}}{{\partial\lambda_{1,j}}{\partial\lambda_{2,l}}} = \left\{ {\begin{matrix} {{{t_{lj}}^{2}\left( {{c_{b,i}m_{1,i}^{2}} - m_{2,i}^{2} + {c_{a,i}m_{3,i}^{2}} - m_{4,i}^{2}} \right)},{1 \leq j},{l \leq M}} \\ {{{t_{lj}}^{2}\left( {{c_{a,i}m_{3,i}^{2}} - m_{4,i}^{2}} \right)},{1 \leq j \leq M},{{M + 1} \leq l \leq L_{R}}} \\ {{{t_{lj}}^{2}\left( {{c_{b,i}m_{1,i}^{2}} - m_{2,i}^{2}} \right)},{{M + 1} \leq j \leq N_{R}},{1 \leq l \leq M},} \\ {0,{{M + 1} \leq j},{l \leq L_{R}}} \end{matrix},{m_{1,i} = \frac{\lambda_{{1R},i}}{1 + {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{1,k}{t_{ik}}^{2}\lambda_{{1R},i}}} + {\lambda_{2,i}c_{b,i}\lambda_{{1R},i}}}},{m_{2,i} = \frac{\lambda_{{1R},i}}{1 + {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{1,k}{t_{ik}}^{2}\lambda_{{1R},i}}} + {\lambda_{2,i}\lambda_{{1R},i}}}},{m_{3,i} = \frac{\lambda_{{2R},i}}{1 + {\lambda_{1}c_{a,i}\lambda_{{2R},i}} + {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{2,k}{t_{ki}}^{2}\lambda_{{2R},i}}}}},{m_{4,i} = {\frac{\lambda_{{2R},i}}{1 + {\lambda_{1}\lambda_{{2R},i}} + {\sum\limits_{k = 1}^{L_{R}}\; {\lambda_{2,k}{t_{ki}}^{2}\lambda_{{2R},i}}}}.}}} \right.}} \right.}} \right.}} \right.}} \right.} \right.}} & \; \end{matrix}$

Denote

${M_{1} = {{H_{R\; 2}\left\lbrack {I_{L_{2}} + {{H_{12}^{H}\left( {I_{L_{1}} + {\frac{P_{2}}{L_{2}\sigma_{n}^{2}}H_{12}H_{12}^{H}}} \right)}^{- 1}\frac{P_{2}}{L_{2}\sigma_{n}^{2}}H_{12}}} \right\rbrack}H_{R\; 2}^{H}}},{{{and}\mspace{14mu} M_{2}} = {{H_{R\; 1}\left\lbrack {I_{L_{1}} + {{H_{21}^{H}\left( {I_{L_{2}} + {\frac{P_{1}}{L_{1}\sigma_{n}^{2}}H_{21}H_{21}^{H}}} \right)}^{- 1}\frac{P_{1}}{L_{1}\sigma_{n}^{2}}H_{21}}} \right\rbrack}{H_{R\; 1}^{H}.}}}$

They are both Hermitian, and M₁=U_(M) ₁ Λ_(M) ₁ U_(M) ₁ ^(H), and M₂=U_(M) ₂ Λ_(M) ₂ U_(M) ₂ ^(H), with U_(M) ₁ , U_(M) ₂ ∈ C^(L) ^(R) ^(×L) ^(R) are unitary matrices, and Λ_(M) ₁ =diag{λ_(M) ₁ _(, i)} and Λ_(M) ₂ =diag{λ_(M) ₂ _(, i)} are diagonal matrices.

Let W₁=V_(2R){tilde over (W)}₁U_(M) ₂ ^(H) and W₂=V_(1R){tilde over (W)}₂U_(M) ₁ ^(H), The problem to determine {tilde over (W)}₁, {tilde over (W)}₂ ∈ C^(L) ^(R) ^(×L) ^(R) , when the CSI of the direct links between Node₁ and Node₂ is available, the RN is the same form as above when the CSI for the direct links between Node₁ and Node₂ is not available and the iterative approach of finding the solution is almost the same as the three cases above by just replacing λ_(R2, i) and λ_(R1, i) by λ_(M) ₁ _(, i) and λ_(M) ₂ _(, i), respectively.

In the design problem, both nodes (source and destination) send out (transmit, communicate, forward) training sequences to the RN, so that the RN can estimate the incoming channels. The RN also needs to send out (transmit, communicate, forward) training sequence(s) for the nodes (source and destination) to estimate the channels (links) from the RN to each of them and also transmit (send out, forward, communicate) information regarding the pre-coding matrices the RN uses.

Two basic data frame structures are proposed for use in the present invention:

(1) The RN applies the pre-coding matrices to the training sequences it receives and forwards them, as in FIG. 4( a) and FIG. 5( a).

(2) The RN estimates the incoming channel matrices, multiplies them with the pre-coding matrices, quantizes the resulting matrices, and feeds them back. It also sends out its own training sequence to the nodes (source and destination) to estimate the channel state (channel conditions) from the RN to them, as in FIG. 4( b) and FIG. 5( b). Still there are other channel estimations that need to be done, such as the CSI of the outgoing channels from RN to nodes (source and destination) at the RN and the CSI of the direct links at the RN. They are done by other frames, such as control frames, etc.

Referring again to FIG. 3 a, which is a block diagram of the operation of an exemplary embodiment of the transmission side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention. data S₁ is transmitted (communicated) from Node₁ as signal X₁ to the RN in the first time slot and data S₂ is transmitted (communicated) from Node₂ as signal X₂ to the RN in the second time slot. The RN then pre-codes, mixes (combines) and multicasts (broadcasts) the pre-coded mixed data (X_(R)) for receipt by both Node₁ and Node₂. It goes without saying that the pre-coded mixed (combined) data is modulated.

Referring again to FIG. 3 b, which is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node₁. Node₁ receives signal Y₁₂ from Node₂ and signal Y_(1R) from the RN and performs joint network and channel decoding. It goes without saying that the decoded data is demodulated.

Referring again to FIG. 3 c, which is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node₂. Node₂ receives signal Y₂₁ from Node₁ and signal Y_(2R) from the RN and performs joint network and channel decoding. It goes without saying that the decoded data is demodulated.

That is, from the standpoint (perspective) of a node that holds (possesses) the transmission opportunity (TXOP), the node includes means for transmitting 9 sending out, communicating) a first signal having data and means for receiving a second signal. The transmitting and receiving means may be a transceiver or a separate transmitter and a separate receiver or any equivalent means. The node also has means for jointly decoding the second signal by removing (subtracting off0 a training sequence and the first signal. Optionally, the node also includes means for decoding the second signal by accounting for the application of a first beamforming matrix to the data of the first signal and the application of a second beamforming matrix to the data of the second signal.

From the standpoint (perspective) of a relay node (RN), the RN includes means for receiving a first signal in a first time slot of a first channel, means for receiving a second signal in a second time slot of a second channel, means for determining a first pre-coding matrix, means for determining a second pre-coding matrix, wherein the first pre-coding matrix and the second pre-coding matrix maximize a joint channel capacity of the first channel and second channel respectively, means for applying the first pre-coding matrix to first data, means for applying the second pre-coding matrix to second data, means for generating a third signal by mixing (combining) the pre-coded first data and the pre-coded second data and means for transmitting the third signal. The transmitting and receiving means may be a transceiver or a separate transmitter and a separate receiver or any equivalent means. The RN also includes means for generating a first estimated channel matrix for the first channel and a second estimated channel matrix for the second channel, means for inserting the first pre-coding matrix times the first estimated channel matrix and the second pre-coding matrix times the second estimated channel matrix between a training sequence of the third signal and means for quantizing the first pre-coding matrix times the first estimated channel matrix and means for quantizing the second pre-coding matrix times the second estimated channel matrix before the means for inserting is executed. Optionally, the RN also includes means for determining a first beamforming matrix, means for determining a second beamforming matrix and means for applying the first beamforming matrix to the first data and applying the second beamforming matrix to the second data before generating the third signal. The RN also optionally includes means for applying the first beamforming matrix to the first pre-coded matrix times the first estimated channel matrix and means for applying the second beamforming matrix to the second pre-coded matrix times the second estimated channel matrix before inserting the first pre-coded matrix times the first estimated channel matrix and the second pre-coded matrix times the second estimated channel matrix between the training sequence of the third signal.

Referring again to FIG. 4, which is collectively simplified exemplary frame structures for the Network-Coded Amplify-and-Forward relaying scheme without beamforming at source nodes of the present invention. FIG. 4 a shows the case where training sequences are sent from the source nodes. The RN sends out training sequences but the training sequences sent by the RN are effectively the training sequences that the RN received from Node₁ and Node₂ copied and returned to the source nodes (Node₁ and Node₂). In the third stage the RN transmits the two training sequences and the mixed data X_(R) to Node_(i). Pre-coding matrices are applied to both the training sequences and to the mixed data X_(R). Pre-coding matrix W₁ is applied to T₁ (the first training sequence) and pre-coding matrix W₂ is applied to T₂ (the second training sequence). Pre-coding matrix W₁ is also applied to H_(R1)X₁ of the mixed signal X_(R) and W₂ is applied to H_(R2)X₂ of the mixed signal X_(R). Note that H_(R1)X₁ is the desired signal that the RN received from Node₁ (Node₁ sent X₁). Also note that H_(R2)X₂ is the desired signal that the RN received from Node₂ (Node₂ sent X₂). In FIG. 4 b, each node sends out (transmits, communicates) its own training sequence and the RN also sends out (transmits, communicates) pre-coding matrices W₁ and W₂ in addition to the mixed data X_(R). No pre-coding matrix is applied to the training sequence T_(R) sent out (transmitted, communicated) by the RN.

Referring again to FIG. 5, which is collectively simplified exemplary frame structures for the Network-Coded Amplify-and-Forward relaying scheme with beamforming at source nodes of the present invention. FIG. 5 a shows the case where training sequences are sent from the source nodes. The RN sends out training sequences but the training sequences sent by the RN are effectively the training sequences that the RN received from Node₁ and Node₂ copied and returned to the source nodes (Node₁ and Node₂). In the third stage the RN transmits the two training sequences and the mixed data X_(R) to Node_(i). Pre-coding matrices are applied to both the training sequences and to the mixed data X_(R). Pre-coding matrix W₁ is applied to T₁ (the first training sequence) and pre-coding matrix W₂ is applied to T₂ (the second training sequence). Pre-coding matrix W₁ is also applied to H_(R1)X₁ of the mixed signal X_(R) and W2 is applied to H_(R2)X₂ of the mixed signal X_(R). Note that H_(R1)X₁ is the desired signal that the RN received from Node₁ (Node₁ sent X₁). Also note that H_(R2)X₂ is the desired signal that the RN received from Node₂ (Node₂ sent X₂). In addition to applying the pre-coding matrices to the training sequences and the mixed data, beamforming matrix Q₁ is applied to training sequence T₁ and beamforming matrix Q₂ is applied to training sequence T₂. Beamforming matrix Q₁ is also applied to X₁ of the mixed signal X_(R) and beamforming matrix Q₂ is applied to X₂ of mixed signal X_(R). In FIG. 5 b, each node sends out (transmits, communicates) its own training sequence and the RN also sends out (transmits, communicates) pre-coding matrices W₁ and W₂ in addition to the mixed signal X_(R). No pre-coding matrix is applied to the training sequence TR sent out (transmitted, communicated) by the RN. Pre-coding matrices are applied to the mixed signal X_(R). Pre-coding matrix W₁ is also applied to H_(R1)X₁ of the mixed signal X_(R) and W2 is applied to H_(R2)X₂ of the mixed signal X_(R). Note that H_(R1)X₁ is the desired signal that the RN received from Node₁ (Node₁ sent X₁). Also note that H_(R2)X₂ is the desired signal that the RN received from Node₂ (Node₂ sent X₂). In addition to applying the pre-coding matrices to mixed signal, beamforming matrix Q₁ is also applied to X₁ of the mixed signal X_(R) and beamforming matrix Q2 is applied to X₂ of mixed signal X_(R).

Referring to FIG. 6, which is a flowchart of an exemplary embodiment of the present invention from the perspective of a node (source and destination), at 605 the node transmits a first signal (message) including data. At 610, the node receives a second signal (message) including data. At 615, the node jointly decodes the second signal (message) which was a combined signal (message) including both the first data transmitted by the node and third data transmitted by another node (destination node for the first data and source node for the third data) by removing (subtracting out) the first data and the training sequence since both the training sequence and the first data are known as well as the pre-coding matrix that was applied to the first data.

Referring to FIG. 7, which is a flowchart of an exemplary embodiment of the present invention from the perspective of a relay node, at 705 the relay node receives a first signal (message) in a first time slot of a first channel. The first signal includes first data and a first training sequence. At 710 the relay node receives a second signal (message) in a second time slot of a second channel. The second signal includes second data and a second training sequence. At 715 the relay node determines a first pre-coding matrix to maximize the joint capacity of the channels. At 720 the relay node determines a second pre-coding matrix to maximize the joint capacity of the channels. At 725 the relay node applies the first pre-coding matrix to first data. At 730 the relay node applies the second pre-coding matrix to second data. At 735 the relay node generates a third signal by mixing (combining) the pre-coded first data and the pre-coded second data. At 740 the relay node transmits (multicasts, broadcasts, communicates, sends out) the third data over (on) both the first and the second channels.

It is to be understood that the present invention may be implemented in various forms of hardware, software, firmware, special purpose processors, or a combination thereof. Preferably, the present invention is implemented as a combination of hardware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage device. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.

It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures are preferably implemented in software, the actual connections between the system components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention. 

1. A method for operation of a bi-directional communication system making use of a relay node, said method comprising: receiving, by said relay node, a first signal including first data in a first time slot of a first channel; receiving, by said relay node, a second signal including second data in a second time slot of a second channel, wherein said first signal and said second signal are exchanged between a source node and a destination node communicating with each other via said relay node; determining, by said relay node, a first pre-coding matrix; determining, by said relay node, a second pre-coding matrix; applying, by said relay node, said first pre-coding matrix to said first data to produce pre-coded first data; applying, by said relay node, said second pre-coding matrix to said second data to produce pre-coded second data; generating, by said relay node, a third signal by combining said pre-coded first data and said pre-coded second data; and transmitting, by said relay node, said third signal on said first channel and said second channel.
 2. The method according to claim 1, wherein said third signal further comprises a training sequence prepended to said third signal.
 3. The method according to claim 2, further comprising generating, by said relay node, a first estimated channel matrix for said first channel and a second estimated channel matrix for said second channel
 4. The method according to claim 3, further comprising inserting, by said relay node, said first pre-coding matrix times said first estimated channel matrix and said second pre-coding matrix times said second estimated channel matrix between said training sequence of said third signal.
 5. The method according to claim 4, further comprising quantizing, by said relay node, said first pre-coding matrix times said first estimated channel matrix and quantizing said second pre-coding matrix times said second estimated channel matrix before said insertion.
 6. The method according to claim 2, wherein said training sequence includes a first training sequence and a second training sequence, said first training sequence is for said first channel and said second training sequence is for said second channel
 7. The method according to claim 1, wherein said first signal includes a training sequence and data.
 8. The method according to claim 5, wherein said second signal includes a training sequence and data.
 9. The method according to claim 1, further comprising: determining, by said relay node, a first beamforming matrix; determining, by said relay node, a second beamforming matrix; and applying, by said relay node, said first beamforming matrix to said first data and applying said second beamforming matrix to said second data before generating said third signal.
 10. The method according to claim 9, further comprising applying, by said relay node, said first beamforming matrix to said first pre-coded matrix times said first estimated channel matrix and applying said second beamforming matrix to said second pre-coded matrix times said second estimated channel matrix before inserting said first pre-coded matrix times said first estimated channel matrix and said second pre-coded matrix times said second estimated channel matrix between said training sequence of said third signal.
 11. The method according to claim 1, wherein said first channel and said second channel are orthogonal.
 12. The method according to claim 1, wherein said second time slot is a reverse direction granted by a node which used said first time slot.
 13. An apparatus comprising: means for receiving a first signal including first data in a first time slot of a first channel; means for receiving a second signal including second data in a second time slot of a second channel, wherein said first signal and said second signal are exchanged between a source node and a destination node communicating with each other via said relay node; means for determining a first pre-coding matrix; means for determining a second pre-coding matrix; means for applying said first pre-coding matrix to said first data to produce pre-coded first data; means for applying said second pre-coding matrix to said second data to produce second pre-coded data; means for generating a third signal by combining said pre-coded first data and said pre-coded second data; and means for transmitting said third signal on said first channel and on said second channel, wherein said apparatus is a relay node of a bi-directional communications system.
 14. The apparatus according to claim 13, wherein said third signal further comprises a training sequence prepended to said third signal.
 15. The apparatus according to claim 14, further comprising means for generating a first estimated channel matrix for said first channel and a second estimated channel matrix for said second channel.
 16. The apparatus according to claim 15, further comprising means for inserting said first pre-coding matrix times said first estimated channel matrix and said second pre-coding matrix times said second estimated channel matrix between said training sequence of said third signal.
 17. The apparatus according to claim 16, further comprising means for quantizing said first pre-coding matrix times said first estimated channel matrix and means for quantizing said second pre-coding matrix times said second estimated channel matrix before said means for inserting is executed.
 18. The apparatus according to claim 14, wherein said training sequence includes a first training sequence and a second training sequence, said first training sequence is for said first channel and said second training sequence is for said second channel
 19. The apparatus according to claim 13, wherein said first signal includes a training sequence and data.
 20. The apparatus according to claim 13, wherein said second signal includes a training sequence and data.
 21. The apparatus according to claim 13, further comprising: means for determining a first beamforming matrix; means for determining a second beamforming matrix; and means for applying said first beamforming matrix to said first data and applying said second beamforming matrix to said second data before generating said third signal.
 22. The apparatus according to claim 21, further comprising means for applying said first beamforming matrix to said first pre-coded matrix times said first estimated channel matrix and means for applying said second beamforming matrix to said second pre-coded matrix times said second estimated channel matrix before inserting said first pre-coded matrix times said first estimated channel matrix and said second pre-coded matrix times said second estimated channel matrix between said training sequence of said third signal.
 23. The apparatus according to claim 13, wherein said first channel and said second channel are orthogonal.
 24. The apparatus according to claim 13, wherein said second time slot is a reverse direction granted by a node which used said first time slot.
 25. A method, said method comprising: transmitting a first signal, wherein said first signal includes first data; receiving a second signal, wherein said second signal includes pre-coded data generated by applying a first pre-coding matrix to said first data and applying a second pre-coding matrix to second data, said first pre-coding matrix and said second pre-coding matrix having been determined by a relay node; and decoding said second signal by removing said first signal.
 26. (canceled)
 27. (canceled)
 28. (canceled)
 29. (canceled)
 30. The method according to claim 25, further comprising a first result generated by said first pre-coding matrix times a first estimated channel matrix and a second result generated by said second pre-coding matrix times a second estimated channel matrix, said first result and said second result included between said a first training sequence and data of said second signal.
 31. The method according to claim 25, wherein a first beamforming matrix was applied to said first pre-coding matrix and said first data and a second beamforming matrix was applied to said second pre-coding matrix and said second data.
 32. An apparatus comprising: means for transmitting a first signal, wherein said first signal includes first data; means for receiving a second signal wherein said second signal includes pre-coded data generated by applying a first pre-coding matrix to said first data and applying a second pre-coding matrix to second data, said first pre-coding matrix and said second pre-coding matrix having been determined by a relay node; and means for decoding said second signal by removing said first signal.
 33. (canceled)
 34. (canceled)
 35. (canceled)
 36. (canceled)
 37. (canceled)
 38. The apparatus according to claim 32, wherein a first beamforming matrix was applied to said first pre-coding matrix and said first data and a second beamforming matrix was applied to said second pre-coding matrix and said second data. 